Distributed ledger systems (DLSs), which can also be referred to as consensus networks, and/or blockchain networks, enable participating entities to securely, and immutably store data. DLSs are commonly referred to as blockchain networks without referencing any particular user case. Examples of types of blockchain networks can include public blockchain networks, private blockchain networks, and consortium blockchain networks. A consortium blockchain network is provided for a select group of entities, which control the consensus process, and includes an access control layer.
A node in a blockchain network runs one or more programs, e.g., a blockchain virtual machine, for executing blockchain-related tasks. Examples of blockchain-related tasks include querying an account's balance, deploying a smart contract, verifying a new blockchain transaction, and so on.
A field-programmable gate array (FPGA) is an integrated circuit capable of being configured to perform different logic functions. An FPGA contains an array of programmable logic blocks and interconnects that can be used to wire the logic blocks in different configurations. An FPGA bitstream is a file that contains the programming information for an FPGA.
Some modern processors include a trusted execution environment (TEE) functionality. A TEE is a secured hardware environment that protects software code executing on a processor from unauthorized modification. A TEE provides an isolated enclave to prevent outside processes (e.g., an operation system, external actors, etc.) from altering any data or software code executing inside the enclave. TEE's also generally include a mechanism for verifying that the software code executing on the processor, or, in some cases, the data associated with the executing software, has not been modified. One example of a TEE implementation is Intel's CPU-based SGX® technology, which relies on a centralized trust authority operated by Intel.
It would be desirable to allow developers to implement their own trust mechanisms without involving an external entity.